---
title: Usa Bun con Astro
description: Aprende cómo usar Bun con tu sitio de Astro.
type: recipe
i18nReady: true
---

[Bun](https://bun.sh/) es un entorno y conjunto de herramientas de JavaScript todo en uno. Consulta la [documentación de Bun](https://bun.sh/docs) para obtener más información.

:::caution
Bun lanzó recientemente su primera versión estable. Sin embargo, al usar Bun con Astro, pueden aparecer problemas inesperados. Algunas integraciones pueden no funcionar como se espera. Consulta la [documentación oficial de Bun para trabajar con Astro](https://bun.sh/guides/ecosystem/astro) para obtener detalles adicionales.

Si tienes algún problema utilizando Bun, por favor [abre un problema en GitHub directamente en el repositorio de Bun](https://github.com/oven-sh/bun/issues/new/choose).
:::

## Prerrequisitos

- Tener Bun instalado localmente en tu máquina. Consulta las [instrucciones de instalación](https://bun.sh/docs/installation) en la documentación oficial de Bun.

## Crea un nuevo proyecto de Astro con Bun

Crea un nuevo proyecto de Astro con Bun utilizando el siguiente comando `create-astro`:

```bash
bunx create-astro@latest my-astro-project-using-bun
```

:::tip
También puedes [crear un nuevo proyecto de Astro a partir de cualquier repositorio de GitHub de Astro existente](/es/install/auto/#plantillas-de-inicio) utilizando la bandera `--template`:
```bash
bunx create-astro@latest my-astro-project-using-bun --template eliancodes/brutal
```
:::

## Instalar dependencias

Si estás comenzando un nuevo proyecto utilizando `bunx create-astro`, la CLI utilizará automáticamente Bun para instalar las dependencias y puedes omitir este paso.

De lo contrario, deberás instalar tus dependencias con Bun:

```bash
bun install
```

## Agrega Tipos

Bun publica el paquete [`@types/bun`](https://www.npmjs.com/package/@types/bun), que contiene los tipos en runtime para Bun.

Instala `@types/bun` utilizando el siguiente comando:

```sh
bun add -d @types/bun
```

## Utilizando las integraciones de Astro

También puedes utilizar cualquiera de las integraciones oficiales de Astro con el comando `astro add`:

```bash
bunx astro add react
```

## Ejecuta Astro con Bun

:::note
Utiliza la [bandera `--bun` en la CLI](https://bun.sh/docs/cli/bunx#shebangs) antes de cada comando `astro` para utilizar el propio entorno de ejecución de Bun en lugar de Node.
:::

### Ejecuta el servidor de desarrollo

Para ejecutar el servidor de desarrollo utilizando Bun como el entorno de ejecución, utiliza el siguiente comando:

```bash
bunx --bun astro dev
```

### Construyendo tu sitio con Bun

Para construir tu sitio utilizando Bun como el entorno de ejecución, utiliza el siguiente comando:

```bash
bunx --bun astro build
```

Astro generará la salida de tu sitio en el directorio `dist/`. Luego, puedes servir tu sitio utilizando el comando `preview`:

```bash
bunx --bun astro preview
```

## Agrega SSR con Bun

Como Bun es [compatible con la API de Node.js](https://bun.sh/docs/runtime/nodejs-apis), puedes usar cualquier adaptador Astro para [server-side rendering](/es/guides/server-side-rendering/) en tu proyecto Astro:

```bash
bunx astro add vercel
```


## Testing en Bun

Bun incluye un ejecutor de tests rápido, integrado y compatible con Jest a través del comando `bun test`. Si quieres usarlo consulta la [documentación de `bun test`](https://bun.sh/docs/cli/test).

Sin embargo, también es posible utilizar Cypress o Playwright para un enfoque moderno de los tests de aplicaciones web.

### Cypress

Cypress es una herramienta de tests front-end y tiene la misión de "hacer agradable la experiencia de los tests y generar felicidad en los desarrolladores". Esto le permite escribir tests de extremo a extremo para tu sitio Astro.

Instala Cypress con el siguiente comando:

```bash
bun add cypress --dev
```

Para el resto de la configuración y para iniciar tu primer test, sigue el resto del proceso de Cypress en la [Guía de testing en Astro](/es/guides/testing/#configuración).

### Playwright

Playwright es un framework de tests de extremo a extremo que te permite probar tu código Astro en todos los motores de renderizado modernos, incluidos Chromium, WebKit y Firefox.

Instala Playwright utilizando el siguiente comando:

```bash
bun create playwright
```

Para crear tu primer test en Playwright, sigue las instrucciones para el resto del proceso Playwright en la [Guía de testing en Astro](/es/guides/testing/#cree-su-primer-test-con-playwright).

## Recursos Oficiales

- [Construye una aplicación con Astro y Bun](https://bun.sh/guides/ecosystem/astro)

## Recursos de la Comunidad

¿Estás usando Bun con Astro? ¡Agrega tu entrada de blog o video a esta página!

- [Construyendo un sitio de Cloudflare Pages con Bun](https://blog.otterlord.dev/posts/hello-from-bun/) - entrada de blog
